Format |
Syntax: |
Operation: |
Operands: |
Architecture revision |
Opcode | ||||||||||||
1 |
pmax.ub Rd, Rx, Ry |
If ( Rx[31:24] > Ry[31:24] ) then Rd[31:24] = Rx[31:24] else Rd[31:24] = Ry[31:24] ; If ( Rx[23:16] > Ry[23:16] ) then Rd[23:16] = Rx[23:16] else Rd[23:16] = Ry[23:16] ; If ( Rx[15:8] > Ry[15:8] ) then Rd[15:8] = Rx[15:8] else Rd[15:8] = Ry[15:8] ; If ( Rx[7:0] > Ry[7:0] ) then Rd[7:0] = Rx[7:0] else Rd[7:0] = Ry[7:0] ; |
{d, x, y} ∈ {0, 1, …, 15} |
Rev1+ |
| ||||||||||||
2 |
pmax.sh Rd, Rx, Ry |
If ( Rx[31:16] > Ry[31:16] ) then Rd[31:16] = Rx[31:16] else Rd[31:16] = Ry[31:16] ; If ( Rx[15:0] > Ry[15:0] ) then Rd[15:0] = Rx[15:0] else Rd[15:0] = Ry[15:0] ; |
{d, x, y} ∈ {0, 1, …, 15} |
Rev1+ |
|
Compute the maximum values of pairs of packed unsigned bytes (pmax.ub) or packed signed halfwords (pmax.sh).
Format I: |
|
Q: |
Not affected. |
V: |
( Rx[7:0] > Ry[7:0] ) |
N: |
( Rx[15:8] > Ry[15:8] ) |
Z: |
( Rx[23:16] > Ry[23:16] ) |
C: |
( Rx[31:24] > Ry[31:24] ) |
Format II: |
|
Q: |
Not affected. |
V: |
Not affected. |
N: |
Not affected. |
Z: |
( Rx[15:0] > Ry[15:0] ) |
C: |
( Rx[31:16] > Ry[31:16] ) |